草庐IT

SQL PRIMARY KEY 约束

全部标签

用于使用 'match' 和 'count' 约束进行扫描的 Lua 脚本

我正在使用Jedis。我需要一个Lua脚本来扫描具有指定限制的模式。我不知道如何在Lua脚本中传递参数。示例代码:Stringscript="return{redis.call('SCAN',KEYS[1],'COUNT',KEYS[2],'MATCH',KEYS[3]}";Listresponse=(List)jedis.eval(script,cursor,COUNT,pattern);如何将这些参数传递给脚本? 最佳答案 您的代码有几点需要修复。在扫描命令中,'match'参数应该放在'count'之前。只有当KEYS是Red

php - 修复 Innodb Integrity 约束违规 : 1452

这个问题在这里已经有了答案:Foreignkeyconstrainterror1452inMySQL-Magentoimport(2个答案)关闭5年前。我可以使用什么Innodb查询来纠正以下问题?SQLSTATE[23000]:Integrityconstraintviolation:1452Cannotaddorupdateachildrow:aforeignkeyconstraintfails(mrvallar_magdb.catalog_product_entity_varchar,CONSTRAINTCATALOG_PRODUCT_ENTITY_VARCHAR_IBFK_3F

php - 在我的情况下如何在 mysql 中定义 FOREIGN KEY 约束不起作用

我需要了解如何在mysql中声明外键及其工作原理。这是一个示例第一个表包含name,age第二个表引用第一个表name。当我运行它时,我只收到错误。query($sql);$sql="CREATETABLEtest(namevarchar(20),ageinteger)";$conn->query($sql);$sql="CREATETABLEtest2(namevarchar(10),FOREIGNKEY(name)REFERENCEStest(name)";if($conn->query($sql)==true){header('Locaton:test3.html');}else

mysql - TYPO3 Extbase - 添加唯一约束的正确方法?

有谁知道如何将唯一约束添加到ext_tables.sql而不会产生像TYPO3想要在每次使用数据库分析器时重新生成它这样的问题?例子:CREATETABLEtableName(CONSTRAINTunique_ibanUNIQUE(iban))CREATETABLEtableName(ibanvarchar(255)DEFAULT''NOTNULLUNIQUE)数据库分析器希望通过这两种方式创建约束,即使它们已经存在。第一个在执行时还会产生错误:Error:Duplicatekeyname'unique_iban'第二个在您每次点击执行时创建一个新约束:ALTERTABLEtableN

MySQL:没有索引的唯一约束

是否可以添加这样的约束ALTERTABLE`t1`ADDUNIQUE(`col1`,`col2`);没有创建索引?该索引不会用于任何查询,因此会浪费空间。如果插入和更新速度变慢也不是问题,因为表不会经常更新。 最佳答案 不,这是不可能的。UNIQUEconstraint包含一个索引定义,我几乎无法想象在不创建索引的情况下如何实现它(在DBMS术语中)。你应该意识到索引不仅仅是“魔法”——它们是一个真正的数据结构,它需要空间来放置,需要处理特殊的过程等等。唯一约束本身意味着唯一索引值,而不是唯一列值。

mysql - 两列组合的双向唯一键约束

我在MySQL中有下表列。iduser_primary_emailuser_secondary_email我想使列user_primary_email和user_secondary_email的组合唯一,我可以通过使用UNIQUEKEYunique_key_name(user_primary_email,user_secondary_email)实现上面添加的唯一键约束将帮助我实现以下场景,或者更确切地说,只需向单个列本身添加一个唯一键。user_primary_email='xyz@gmail.com'ANDuser_secondary_email='pqr@gmail.com'us

mysql - 使用外键约束和索引在 MySql InnoDb 中进行行锁定?

快速提问。与我有25年数据库经验的friend交谈时,他告诉我你是否在数据库中使用外键约束;例如,当一个表被写入消息表时,它将锁定父表上的相关行,例如用户。这是真的吗?他还说将索引应用到外键列应该可以克服这种锁定,这是真的吗?我担心我的网站流量在增长,我可以想象这是一个问题!谢谢! 最佳答案 我写了一篇关于此的博文-http://www.mysqlperformanceblog.com/2010/09/20/instrumentation-and-the-cost-of-foreign-keys/-演示就像你的friend描述的那样

mysql - 执行具有完整性约束的 'subset' 关系的最佳方法是什么

例如,给定3个表:腹足动物蜗牛鼻涕虫假设我们想要强制执行“腹足动物”中的每一行在“蜗牛”或“蛞蝓”(但不是两者)中都有对应的一行“slug”中的每一行在“gastropod”中恰好对应一行“snail”中的每一行在“gastropod”中恰好对应一行设置架构以强制执行这些约束的最佳方式是什么?我已经为postgres提供了一个可能的答案,我对postgres和Oracle的解决方案特别感兴趣,但也有兴趣查看其他RDBMS的解决方案编辑作为引用,来自以下解决类似问题的答案/评论中的问题:MaintainingsubclassintegrityinarelationaldatabaseDa

mysql - 无法截断外键约束中引用的表

无法截断在外键约束中引用的表。我应该先做什么才能启用截断?详情:(`guacamole`.`guacamole_connection_history`,CONSTRAINT`guacamole_connection_history_ibfk_2`FOREIGNKEY(`connection_id`)REFERENCES`guacamole`.`guacamole_connection`(`connection_id`))我想清除guacamole_connection表以进行开发测试。 最佳答案 您可以通过跳过外键检查来截断。SET

MySQL Insert Select 不强制执行 NOT NULL 约束

我在运行INSERTINTOxxx(col)SELECT...时遇到MySQL5.6InnoDb忽略NOTNULL外键的问题。当以其他格式运行插入语句时,约束会被正确执行。启用外键检查,并且sql_mode=STRICT_TRANS_TABLES,STRICT_ALL_TABLES,NO_ENGINE_SUBSTITUTION这是一个例子:CREATETABLETest_Parent(idBIGINT(18)UNSIGNEDPRIMARYKEYNOTNULLAUTO_INCREMENT,dummyVARCHAR(255))ENGINE=InnoDBDEFAULTCHARACTERSET